package common.sort;

import static utils.Tools.swap;

/**
 * 原理:
 * 从第0个位置开始，找出当前数组的最小值与其交换
 */
public class SelectSort implements Sort {

    @Override
    public void sort(int[] array) {
        int LEN = array.length;
        int minIndex = 0;
        for (int i = 0; i < LEN; i++) {
            minIndex = i;
            // 寻早最小值下标
            for (int j = i + 1; j < LEN; j++) {
                if (array[minIndex] > array[j]) {
                    minIndex = j;
                }
            }
            swap(array, minIndex, i);
        }
    }
}
